// 修改收货地址页面

$(function() {
    // 1、获取URL传过来的编辑行的id
    var id = location.search.split('=')[1];
    // var id = location.href;  //url地址
    console.log(id);

    // 2、ajax请求获取用户存储的所有地址，再根据遍历判断id，找到id相等的信息,渲染页面
    $.ajax({
        type: 'get',
        url: '/address/queryAddress',
        data: {
            id: id,
        },
        success: function(res) {
            console.log(res); //所有地址
            var currentAdd;
            res.forEach(element => {
                if (element.id == id) {
                    currentAdd = element;
                    // break; //结束循环
                };
            });
            console.log(currentAdd);
            // bug :currentAdd是对象，模板里直接使用id即可，无需currentAdd.id
            var html = template('tem-editAdd', currentAdd);
            $('.editAddBox').html(html);

            // bug :要在页面渲染成功之后，再初始化省市区的选择器
            $('[name="city"]').on('tap', function() {
                var picker = new mui.PopPicker({
                    // 三级联动，有三列
                    layer: 3,
                });
                // 直接引入city.js文件，传入数组数据cityData
                picker.setData(cityData);
                // 显示，点击确定之后的回调函数，参数SelectedItem为选择的省市区
                picker.show(function(SelectedItem) {
                    // console.log(SelectedItem);
                    var address = '';
                    SelectedItem.forEach(element => {
                        address += element.text + " ";
                        postcode = element.value;
                    });
                    $('[name="city"]').val(address);
                })
            });
        }
    });

    // 3、点击修改完成按钮，请求数据库修改，然后跳转到地址列表页
    $('#editAdd-btn').on('tap', function() {
        // 获取用户输入的地址
        var name = $.trim($('[name="name"]').val());
        var postcode = $.trim($('[name="postcode"]').val());
        var city = $.trim($('[name="city"]').val());
        var detailcity = $.trim($('[name="detail-city"]').val());
        // 发送修改地址请求
        $.ajax({
            type: 'post',
            url: '/address/updateAddress',
            data: {
                id: id,
                address: city,
                addressDetail: detailcity,
                recipients: name,
                postcode: postcode,
            },
            sendBefore: function() {
                //验证用户是否输入
                if (!name) {
                    mui.toast('请输入收货人姓名');
                    return false;
                };
                if (!postcode) {
                    mui.toast('请输入邮政编码');
                    return false;
                };
                if (!city) {
                    mui.toast('请选择省市区');
                    return false;
                };
                if (!detailcity) {
                    mui.toast('请输入详细收货地址');
                    return false;
                };
            },
            success: function(res) {
                if (res.success) {
                    // 修改成功跳转到列表页
                    location.href = 'address.html';
                }
            }
        })
    });
})